package redis.clients.jedis;


import java.util.List;

public interface BinaryScriptingCommands {

    Object eval(byte[] script, byte[] keyCount, byte[]... params);

    Object eval(byte[] script, int keyCount, byte[]... params);
    
    Object eval(byte[] script, List<byte[]> keys, List<byte[]> args);

    Object eval(byte[] script);

    Object evalsha(byte[] script);

    Object evalsha(byte[] sha1, List<byte[]> keys, List<byte[]> args);

    Object evalsha(byte[] sha1, int keyCount, byte[]... params);

    // TODO: should be Boolean, add singular version
    List<Long> scriptExists(byte[]... sha1);

    byte[] scriptLoad(byte[] script);

    String scriptFlush();

    String scriptKill();
}
